package com.woniushop.dao;

import java.util.List;

import com.woniushop.entity.OrderInfo;

/**
 * 订单明细DAO接口
 * 
 * @author 崔新雄
 *
 */
public interface OrderInfoDAO {

	/**
	 * 将orderInfo对象加入数据库中
	 * 
	 * @param orderInfo
	 */
	void add(OrderInfo orderInfo);

	/**
	 * 根据订单明细id删除数据库中对应的订单明细数据
	 * 
	 * @param oiid
	 */
	void delete(Integer oiid);

	/**
	 * 修改对应的订单明细数据
	 * 
	 * @param orderInfo
	 */
	void update(OrderInfo orderInfo);

	/**
	 * 根据对应的订单明细id查找订单明细数据
	 * 
	 * @param oid
	 * @return
	 */
	OrderInfo findOne(Integer oiid);

	/**
	 * 根据对应的订单id和商品id查找订单明细数据
	 * 
	 * @param oid
	 * @return
	 */
	OrderInfo findOne(Integer oid, Integer gid);

	/**
	 * 多条件分页查询订单明细数据
	 * 
	 * @param page
	 * @param pageSize
	 * @param orderInfo
	 * @return
	 */
	List<OrderInfo> findByPage(Integer page, Integer pageSize, OrderInfo orderInfo);

	/**
	 * 查找符合条件的订单明细数量
	 * 
	 * @param orderInfo
	 * @return
	 */
	Integer count(OrderInfo orderInfo);

	/**
	 * 根据订单明细id批量删除数据库中对应的订单明细数据
	 * 
	 * @param oiid
	 */
	void deleteAll(Integer[] oiids);

	/**
	 * 删除某一订单下的所有订单明细
	 * 
	 * @param oid
	 */
	void deleteByOid(Integer oid);

}
